package cn.iocoder.yudao.module.eval.dal.dataobject.employee;

import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*;

import java.time.LocalDateTime;

/**
 * 员工档案 DO
 *
 * @author 芋道源码
 */
@TableName("eval_employee_profile")
@KeySequence("eval_employee_profile_seq")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class EvalEmployeeProfileDO extends BaseDO {

    /**
     * 编号
     */
    @TableId
    private Long id;

    /**
     * 用户ID
     */
    private Long userId;

    /**
     * 员工编号
     */
    private String employeeCode;

    /**
     * 姓名
     */
    private String name;

    /**
     * 身份证号
     */
    private String idNumber;

    /**
     * 手机号
     */
    private String mobile;

    /**
     * 邮箱
     */
    private String email;

    /**
     * 性别：1-男，2-女
     */
    private Integer gender;

    /**
     * 出生日期
     */
    private LocalDateTime birthDate;

    /**
     * 学历：1-小学，2-初中，3-高中，4-中专，5-大专，6-本科，7-硕士，8-博士
     */
    private Integer education;

    /**
     * 专业
     */
    private String major;

    /**
     * 毕业院校
     */
    private String graduationSchool;

    /**
     * 毕业时间
     */
    private LocalDateTime graduationDate;

    /**
     * 部门ID
     */
    private Long deptId;

    /**
     * 岗位ID
     */
    private Long postId;

    /**
     * 入职时间
     */
    private LocalDateTime entryDate;

    /**
     * 员工状态：1-在职，2-离职，3-停薪留职
     */
    private Integer employeeStatus;

    /**
     * 工作年限
     */
    private Integer workYears;

    /**
     * 职业技能等级
     */
    private String skillLevel;

    /**
     * 持有证书（JSON格式）
     */
    private String certificates;

    /**
     * 特长技能
     */
    private String specialSkills;

    /**
     * 紧急联系人
     */
    private String emergencyContact;

    /**
     * 紧急联系电话
     */
    private String emergencyPhone;

    /**
     * 家庭住址
     */
    private String homeAddress;

    /**
     * 备注
     */
    private String remarks;

}
